Welcome to python!

19、datafream式判断筛选操作行

import pandas as pd

path=r"D:\Pyobject2023\object\Case\素材"

df=pd.read_excel(path+r"/1.04.xlsx")

print(df)

def generate_description(row):

if "散PIN" in row["材料描述"]:

increase = ((row["新表材料单价"] - row["旧表材料单价"]) / row["旧表材料单价"]) * 100

return f"前一次材料单价{round(row['旧表材料单价'],2)}元/pin,现在材料单价{round(row['新表材料单价'],2}元/pin,涨幅{round(increase)}%"

else:

return ""

# 生成说明列

df["分析说明_外购pin"] = df.apply(generate_description, axis=1)

print(df.to_string()) #此行是全局显示

pd.reset_option('display.max_columns') #操作完成后如需恢复默认

print(df)

返回值


产品编码 ... 新表材料单价
0 12301117 ... 0.005394
1 12301118 ... 0.056897
2 12307021 ... 0.005667
3 90010002 ... 1.900000

[4rowsx4columns]


产品编码 材料描述 旧表材料单价 新表材料单价 分析说明_外购pin
0 12301117 1230系列 2.00mm 简易牛角 吸附帽 5.6*7.3*4.9 PA6T 黑色 UL94V-0 0.004301 0.005394
1 12301118 1230 2.00mm 散PIN方针 公 高6.40宽6.30 2×06PIN 带定位柱 LCP+30%GF 黑 UL94V-0 0.114653 0.056897 前一次材料单价0.11元/pin,现在材料单价0.06元/pin,涨幅-50%
2 12307021 散PIN方针 焊板 □0.50*8.2 料带位置3.8 间距2.0 H70 素材 带Kink 0.005318 0.005667 前一次材料单价0.01元/pin,现在材料单价0.01元/pin,涨幅7%
3 90010002 外箱 双瓦楞A=A 厚6.0~7.0 311×267×152 盛凌标识 汽车产品用 1.940000 1.900000

产品编码 ... 分析说明_外购pin
0 12301117 ...
1 12301118 ...
2 12307021 ...
3 90010002 ...